科威嵌入式PLC與三菱變頻器FR-E500通信
2007/9/21 9:46:00
一、三菱變頻器通信數據格式
使用十六進制數,數據在PLC和變頻器之間自動使用ASCⅡ傳輸
寫入:PLC(主站)向變頻器(從站)寫入數據;
讀出:PLC 從變頻器讀出數據。
1)從PLC到變頻器的通信請求數據
數據寫入:
寫入的數據位數為2位時的格式,如數據:23H(數據的位數由指令代碼決定)
ENQ(1)+變頻器站號(2,3)+指令代碼(4,5)+等待時間(6)+數 據(7,8)+總和校驗(9,10)+CR或者LF(11)
寫入的數據位數為4位時的格式,如數據:2356H
ENQ(1)+變頻器站號(2,3)+指令代碼(4,5)+等待時間(6)+數 據(7,8,9,10)+總和校驗(11,12)+CR或者LF(13)
寫入的數據位數為6位時的格式,如數據:2378ABH
ENQ(1)+變頻器站號(2,3)+指令代碼(4,5)+等待時間(6)+數 據(7,8,9,10,11,12)+總和校驗(13,14)+CR或者LF(15)
數據讀出時的通信格式:
ENQ(1)+變頻器站號(2,3)+指令代碼(4,5)+等待時間(6)+總和校驗(7,8)+CR或者LF(9)
2)寫入數據時從變頻器向PLC的送信數據
沒有發現數據錯誤的格式
ACK(1)+變頻器站號(2,3)+CR或者LF(4)
發現數據錯誤的格式
NAK(1)+變頻器站號(2,3)+數據錯誤代碼(4)+CR或者LF(5)
3)讀出數據時從變頻器到PLC的應答數據
讀出的數據為2位時的格式
STX(1)+變頻器號(2,3)+讀出數據(4,5)+ETX(6)+總和校驗(7,8)+CR或者LF(9)
讀出的數據為4位時的格式
STX(1)+變頻器號(2,3)+讀 出 數 據(4,5,6,7)+ETX(8)+總和校驗(9,10)+CR或者LF(11)
讀出的數據為6位時的格式
STX(1)+變頻器號(2,3)+讀出數據(4,5,6,7,8,9)+ETX(10)+總和校驗(11,12)+CR或者LF(13)
4)讀出數據時的從PLC到變頻器送信數據
沒有發現數據錯誤的格式
ACK(1)+變頻器站號(2,3)+CR或者LF(4)
發現數據錯誤的格式
NAK(1)+變頻器站號(2,3)+數據錯誤代碼(4)+CR或者LF(5)
以上各表最后一列可以省去在變頻器P124=0即可(本實驗也省掉了)
(2)數據定義
控制代碼
信號(STX)+ASCⅡ碼(H02)+ 說明(數據開始);
信號(ETX)+ASCⅡ碼(H03)+ 說明(數據結束);
信號(ENQ)+ASCⅡ碼(H05)+ 說明(通訊請求);
信號(ACK)+ASCⅡ碼(H06)+ 說明(沒有發現數據錯誤);
信號(LF)+ASCⅡ碼(H0A)+ 說明(回車);
信號(CR)+ASCⅡ碼(H0D)+ 說明(換行);
信號(NAK)+ASCⅡ碼(H15)+ 說明(發現數據錯誤);
二、科威PLC自由協議的相關函數
1、發送函數
函數功能號:D8200=K29
調用方法:: SET M8200
入口參數: 通信格式(D8120);
待發送字節數(D8121);
發送區的起始單元(D8128);
發送/接收超時時間設定(D8127,可選);
狀態參數: 發送請求標志(M8121);
發送成功標志(M8122);
發送剩余字節數(D8122),超時剩余時間(D8130);
奇偶校驗錯標志(M8120),發送/接收超時標志(M8127);
函數調用過程:設置入口參數→賦函數功能號→調用函數→查看標志 → 決定下一流程。
2、接收函數
函數功能號: D8200=K30
通信格式: D8120_Bit10=1”發送結束自動轉接收”則接收函數的函數功能號和通信格式就可以省略,參照《科威PLC編程手冊》P196所述的自動隱式調用接收函數。
調用方法::SET M8200
入口參數:通信格式(D8120)
待接收的字節數(D8123)
接收區的起始單元(D8129)
設定接收的起始字符(D8125)
設定接收的終止字符(D8126)
發送/接收超時時間設定(D8127,可選)
狀態參數:接收請求標志(M8123)
接收到起始字節的標志(M8124)
接收到起始符的標志(M8125), 接收到終止符的標志(M8126),
已接收的字節數(D8124),超時剩余時間(D8130)
奇偶校驗錯標志(M8120),發送/接收超時標志(M8127)
函數調用過程:設置入參數→賦函數功能號 → 調用函數→ 查看標志 → 決定下一流程
3、輔助函數
所有的輔助函數調用的方式大體上是相似的
1) ASCⅡ碼轉換為HEX函數
函數功能號: D8200=K25
調用方法: SET M8200
入口參數指針: D8201
有效字節數: D8202 , 即數據個數
起始字節: M8201;
起始高字節:RST M8201;
起始低字節:SET M8201
字/字節有效: M8202;
字有效: RST M8202;
字有效: SET M8202;
出口參數指針: D8203;
起始字節: M8203;
起始高字節:RST M8203;
起始低字節:SET M8203;
字/字節有效: M8204;
字有效: RST M82024;
字有效: SET M8204;
函數調用過程:設置出入口參數→賦函數功能號→ 調用函數;
2) HEX轉換為ASCⅡ碼函數
函數功能號::D8200=K26
調用方法: SET M8200
入口參數指針: D8201
有效字節數: D8202 , 即數據個數
起始字節: M8201;
起始高字節:RST M8201;
起始低字節:SET M8201;
字/字節有效: M8202;
字有效: RST M8202;
字有效: SET M8202 ;
出口參數指針: D8203;
起始字節: M8203;
起始高字節:RST M8203;
起始低字節:SET M8203;
字/字節有效: M8204 ;
字有效: RST M82024;
字有效: SET M8204;
函數調用過程:設置出入口參數→賦函數功能號 → 調用函數;
三、PLC與變頻器的連線
變頻器端的接口是RJ45;(見附件1)
PLC端的接口是端子接線:RS485-A,RS485-B
把變頻器的RDA和SDA連起來接到科威PLC的RS485-A ;
把變頻器的RDB和SDB連起來接到科威PLC的RS485-B(用網線制作通訊電纜);
四、程序結構
1、程序框圖

五、資源占用情況說明
1)主程序
地址(D0)+存放內容(讀/寫標志:D0=0讀;D0=1寫);
地址(D1)+存放內容(所讀/寫的數據位數);
地址(D2)+存放內容(讀/寫命令代碼);
地址(D3)+存放內容(所寫的數據);
地址(D4)+存放內容(所寫的數據);
地址(D5)+存放內容(從站號);
地址(D6)+存放內容(等待時間);
數據寄存器(D0-D6)+狀態元件S(S0-S4)+位元件M(M0-M43)+標簽P(P0-P4);
數據寄存器(D20)+位元件M(M51-M54)+標簽P(P13-P16);
數據寄存器(D7200)+位元件M(M1012-M1039);
2)發送和接收函數
位元件M(M98-M100)+定時計(T200)
3)P0子程序
數據寄存器(D11-D18)+位元件M(M0-M43);
數據寄存器(D6000-D6010)+位元件M (M1000-M1007);
數據寄存器(D7000-D7021,D7030-D7033)+位元件M(M1012-M1039);
4)P1子程序
數據寄存器(D11-D12)+位元件M(M1000-M1007);
數據寄存器(D6011-D6012) ;
數據寄存器(D7030-D7033);
5)P2子程序
數據寄存器(D20-D24)+位元件M(M98-M99);
數據寄存器(D7000-D7001);
6)P3子程序
數據寄存器(D7D-10,D21-D24)+位元件M(M1100-M1155)+定時器(T0);
數據寄存器(D7000-D7003) +位元件M(M1200-M1215);
數據寄存器(D7101-D7105);
7)P4子程序
數據寄存器
D7?D10
D7101?D7105
8)P13子程序
P13子程序說明HFF=1的功能代碼
數據寄存器
D1?D4
D20,D30,
9)P14子程序
P14子程序說明H7F=1的功能代碼
數據寄存器
D1?D4
D20,D30,
10)P15子程序
P15子程序說明HFF=0的功能代碼
數據寄存器
D1?D4
D20,D30,
11)P16子程序
P16子程序說明H7F=0的功能代碼
數據寄存器
D1?D4
D20,D30,
附件1:接線圖

附件2:在實現相應的讀寫參數之前先保證通信參數擴展“H7F或者HFF”的值是它們所在列的“H7F或者HFF”的值,但是因為每列“HFF或者H7F”的有且只需要填寫一次(填寫一次后變頻器自動記憶,除非復位,出廠時“HFF=0或者H7F=0”)即可去完成“HFF或者H7F”所在列的其他功能,方法是:填寫D30=0,并按下相應的M即可

附表2使用說明:首先根據需要選定相應的參數,再根據參數找相應縱橫的首行M,首列D30的值,需要先把相應的把M強制為ON再給D30賦予相應功能號的值,即可實現要讀的參數;若要寫再通過D3賦予所需要的數值即可實現寫的功能。
下面用下面兩個例子,分別說明讀寫方法:
讀寫前變頻器參數設定:根據程序通信格式要求:D8120=H0436(含義:表示“0”表示自由協議,
“4”表示發送結束自動轉接收, “3”表示波特率為9600bps,“6”為7位數據1停止位且無奇偶校驗.故變頻器參數設定如下: PLC和1#變頻器通信時,所以P117=1;P118=96;
P119=10;P120=2;P121=9999;P122=9999;P123=9999;P124=0
例一:要讀取“輸出電壓值”(功能號為D30=K3,M51=ON和M100=ON),則先令M100=ON,再令M51=ON,最后填寫D30=K2就可以在D10看到相應的電壓值。
使用十六進制數,數據在PLC和變頻器之間自動使用ASCⅡ傳輸
寫入:PLC(主站)向變頻器(從站)寫入數據;
讀出:PLC 從變頻器讀出數據。
1)從PLC到變頻器的通信請求數據
數據寫入:
寫入的數據位數為2位時的格式,如數據:23H(數據的位數由指令代碼決定)
ENQ(1)+變頻器站號(2,3)+指令代碼(4,5)+等待時間(6)+數 據(7,8)+總和校驗(9,10)+CR或者LF(11)
寫入的數據位數為4位時的格式,如數據:2356H
ENQ(1)+變頻器站號(2,3)+指令代碼(4,5)+等待時間(6)+數 據(7,8,9,10)+總和校驗(11,12)+CR或者LF(13)
寫入的數據位數為6位時的格式,如數據:2378ABH
ENQ(1)+變頻器站號(2,3)+指令代碼(4,5)+等待時間(6)+數 據(7,8,9,10,11,12)+總和校驗(13,14)+CR或者LF(15)
數據讀出時的通信格式:
ENQ(1)+變頻器站號(2,3)+指令代碼(4,5)+等待時間(6)+總和校驗(7,8)+CR或者LF(9)
2)寫入數據時從變頻器向PLC的送信數據
沒有發現數據錯誤的格式
ACK(1)+變頻器站號(2,3)+CR或者LF(4)
發現數據錯誤的格式
NAK(1)+變頻器站號(2,3)+數據錯誤代碼(4)+CR或者LF(5)
3)讀出數據時從變頻器到PLC的應答數據
讀出的數據為2位時的格式
STX(1)+變頻器號(2,3)+讀出數據(4,5)+ETX(6)+總和校驗(7,8)+CR或者LF(9)
讀出的數據為4位時的格式
STX(1)+變頻器號(2,3)+讀 出 數 據(4,5,6,7)+ETX(8)+總和校驗(9,10)+CR或者LF(11)
讀出的數據為6位時的格式
STX(1)+變頻器號(2,3)+讀出數據(4,5,6,7,8,9)+ETX(10)+總和校驗(11,12)+CR或者LF(13)
4)讀出數據時的從PLC到變頻器送信數據
沒有發現數據錯誤的格式
ACK(1)+變頻器站號(2,3)+CR或者LF(4)
發現數據錯誤的格式
NAK(1)+變頻器站號(2,3)+數據錯誤代碼(4)+CR或者LF(5)
以上各表最后一列可以省去在變頻器P124=0即可(本實驗也省掉了)
(2)數據定義
控制代碼
信號(STX)+ASCⅡ碼(H02)+ 說明(數據開始);
信號(ETX)+ASCⅡ碼(H03)+ 說明(數據結束);
信號(ENQ)+ASCⅡ碼(H05)+ 說明(通訊請求);
信號(ACK)+ASCⅡ碼(H06)+ 說明(沒有發現數據錯誤);
信號(LF)+ASCⅡ碼(H0A)+ 說明(回車);
信號(CR)+ASCⅡ碼(H0D)+ 說明(換行);
信號(NAK)+ASCⅡ碼(H15)+ 說明(發現數據錯誤);
二、科威PLC自由協議的相關函數
1、發送函數
函數功能號:D8200=K29
調用方法:: SET M8200
入口參數: 通信格式(D8120);
待發送字節數(D8121);
發送區的起始單元(D8128);
發送/接收超時時間設定(D8127,可選);
狀態參數: 發送請求標志(M8121);
發送成功標志(M8122);
發送剩余字節數(D8122),超時剩余時間(D8130);
奇偶校驗錯標志(M8120),發送/接收超時標志(M8127);
函數調用過程:設置入口參數→賦函數功能號→調用函數→查看標志 → 決定下一流程。
2、接收函數
函數功能號: D8200=K30
通信格式: D8120_Bit10=1”發送結束自動轉接收”則接收函數的函數功能號和通信格式就可以省略,參照《科威PLC編程手冊》P196所述的自動隱式調用接收函數。
調用方法::SET M8200
入口參數:通信格式(D8120)
待接收的字節數(D8123)
接收區的起始單元(D8129)
設定接收的起始字符(D8125)
設定接收的終止字符(D8126)
發送/接收超時時間設定(D8127,可選)
狀態參數:接收請求標志(M8123)
接收到起始字節的標志(M8124)
接收到起始符的標志(M8125), 接收到終止符的標志(M8126),
已接收的字節數(D8124),超時剩余時間(D8130)
奇偶校驗錯標志(M8120),發送/接收超時標志(M8127)
函數調用過程:設置入參數→賦函數功能號 → 調用函數→ 查看標志 → 決定下一流程
3、輔助函數
所有的輔助函數調用的方式大體上是相似的
1) ASCⅡ碼轉換為HEX函數
函數功能號: D8200=K25
調用方法: SET M8200
入口參數指針: D8201
有效字節數: D8202 , 即數據個數
起始字節: M8201;
起始高字節:RST M8201;
起始低字節:SET M8201
字/字節有效: M8202;
字有效: RST M8202;
字有效: SET M8202;
出口參數指針: D8203;
起始字節: M8203;
起始高字節:RST M8203;
起始低字節:SET M8203;
字/字節有效: M8204;
字有效: RST M82024;
字有效: SET M8204;
函數調用過程:設置出入口參數→賦函數功能號→ 調用函數;
2) HEX轉換為ASCⅡ碼函數
函數功能號::D8200=K26
調用方法: SET M8200
入口參數指針: D8201
有效字節數: D8202 , 即數據個數
起始字節: M8201;
起始高字節:RST M8201;
起始低字節:SET M8201;
字/字節有效: M8202;
字有效: RST M8202;
字有效: SET M8202 ;
出口參數指針: D8203;
起始字節: M8203;
起始高字節:RST M8203;
起始低字節:SET M8203;
字/字節有效: M8204 ;
字有效: RST M82024;
字有效: SET M8204;
函數調用過程:設置出入口參數→賦函數功能號 → 調用函數;
三、PLC與變頻器的連線
變頻器端的接口是RJ45;(見附件1)
PLC端的接口是端子接線:RS485-A,RS485-B
把變頻器的RDA和SDA連起來接到科威PLC的RS485-A ;
把變頻器的RDB和SDB連起來接到科威PLC的RS485-B(用網線制作通訊電纜);
四、程序結構
1、程序框圖

五、資源占用情況說明
1)主程序
地址(D0)+存放內容(讀/寫標志:D0=0讀;D0=1寫);
地址(D1)+存放內容(所讀/寫的數據位數);
地址(D2)+存放內容(讀/寫命令代碼);
地址(D3)+存放內容(所寫的數據);
地址(D4)+存放內容(所寫的數據);
地址(D5)+存放內容(從站號);
地址(D6)+存放內容(等待時間);
數據寄存器(D0-D6)+狀態元件S(S0-S4)+位元件M(M0-M43)+標簽P(P0-P4);
數據寄存器(D20)+位元件M(M51-M54)+標簽P(P13-P16);
數據寄存器(D7200)+位元件M(M1012-M1039);
2)發送和接收函數
位元件M(M98-M100)+定時計(T200)
3)P0子程序
數據寄存器(D11-D18)+位元件M(M0-M43);
數據寄存器(D6000-D6010)+位元件M (M1000-M1007);
數據寄存器(D7000-D7021,D7030-D7033)+位元件M(M1012-M1039);
4)P1子程序
數據寄存器(D11-D12)+位元件M(M1000-M1007);
數據寄存器(D6011-D6012) ;
數據寄存器(D7030-D7033);
5)P2子程序
數據寄存器(D20-D24)+位元件M(M98-M99);
數據寄存器(D7000-D7001);
6)P3子程序
數據寄存器(D7D-10,D21-D24)+位元件M(M1100-M1155)+定時器(T0);
數據寄存器(D7000-D7003) +位元件M(M1200-M1215);
數據寄存器(D7101-D7105);
7)P4子程序
數據寄存器
D7?D10
D7101?D7105
8)P13子程序
P13子程序說明HFF=1的功能代碼
數據寄存器
D1?D4
D20,D30,
9)P14子程序
P14子程序說明H7F=1的功能代碼
數據寄存器
D1?D4
D20,D30,
10)P15子程序
P15子程序說明HFF=0的功能代碼
數據寄存器
D1?D4
D20,D30,
11)P16子程序
P16子程序說明H7F=0的功能代碼
數據寄存器
D1?D4
D20,D30,
附件1:接線圖
附件2:在實現相應的讀寫參數之前先保證通信參數擴展“H7F或者HFF”的值是它們所在列的“H7F或者HFF”的值,但是因為每列“HFF或者H7F”的有且只需要填寫一次(填寫一次后變頻器自動記憶,除非復位,出廠時“HFF=0或者H7F=0”)即可去完成“HFF或者H7F”所在列的其他功能,方法是:填寫D30=0,并按下相應的M即可
附表2使用說明:首先根據需要選定相應的參數,再根據參數找相應縱橫的首行M,首列D30的值,需要先把相應的把M強制為ON再給D30賦予相應功能號的值,即可實現要讀的參數;若要寫再通過D3賦予所需要的數值即可實現寫的功能。
下面用下面兩個例子,分別說明讀寫方法:
讀寫前變頻器參數設定:根據程序通信格式要求:D8120=H0436(含義:表示“0”表示自由協議,
“4”表示發送結束自動轉接收, “3”表示波特率為9600bps,“6”為7位數據1停止位且無奇偶校驗.故變頻器參數設定如下: PLC和1#變頻器通信時,所以P117=1;P118=96;
P119=10;P120=2;P121=9999;P122=9999;P123=9999;P124=0
例一:要讀取“輸出電壓值”(功能號為D30=K3,M51=ON和M100=ON),則先令M100=ON,再令M51=ON,最后填寫D30=K2就可以在D10看到相應的電壓值。

提交
查看更多評論
其他資訊
【KEWEI】科威單板智能伺服在織帶收卷機上的應用
【KEWEI】科威產品選型冊
科威六軸運動控制器的特點及功能
科威電機,快速門中的“智能機”
科威觸摸屏PLC一體機組態軟件